{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<img src=\"../images/ipython_logo.png\">"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Back to the main [Index](../Index.ipynb)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Parallel Computing"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "IPython includes an architecture and library for interactive parallel computing. The enables Python functions, along with their arguments, to be run in parallel a multicore CPU, cluster or cloud using a simple Python API."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Tutorials"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "* [Data Publication API](Data Publication API.ipynb)\n",
    "* [Using Futures with IPython Parallel](Futures.ipynb) "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Examples"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "* [Monitoring an MPI Simulation - 1](Monitoring an MPI Simulation - 1.ipynb)\n",
    "* [Monitoring an MPI Simulation - 2](Monitoring an MPI Simulation - 2.ipynb)\n",
    "* [Parallel Decorator and map](Parallel Decorator and map.ipynb)\n",
    "* [Parallel Magics](Parallel Magics.ipynb)\n",
    "* [Using Dill](Using Dill.ipynb)\n",
    "* [Using MPI with IPython Parallel](Using MPI with IPython Parallel.ipynb)\n",
    "* [Monte Carlo Options](Monte Carlo Options.ipynb)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Non-notebook examples"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "This directory also contains examples that are regular Python (`.py`) files."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "customresults.py  fetchparse.py     nwmerge.py        throughput.py\r\n",
      "dagdeps.py        iopubwatcher.py   phistogram.py\r\n",
      "dependencies.py   itermapresult.py  task_profiler.py\r\n"
     ]
    }
   ],
   "source": [
    "ls *.py"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "More substantial examples can be found in subdirectories:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "daVinci Word Count/:\r\n",
      "pwordfreq.py  wordfreq.py\r\n",
      "\r\n",
      "interengine/:\r\n",
      "bintree.py         \u001b[31mbintree_script.py\u001b[m\u001b[m* communicator.py    interengine.py\r\n",
      "\r\n",
      "pi/:\r\n",
      "parallelpi.py  pidigits.py\r\n",
      "\r\n",
      "rmt/:\r\n",
      "rmt.ipy       rmt.ipynb     rmtkernel.py\r\n",
      "\r\n",
      "wave2D/:\r\n",
      "\u001b[31mRectPartitioner.py\u001b[m\u001b[m*  \u001b[31mparallelwave-mpi.py\u001b[m\u001b[m* \u001b[31mwavesolver.py\u001b[m\u001b[m*\r\n",
      "communicator.py      \u001b[31mparallelwave.py\u001b[m\u001b[m*\r\n"
     ]
    }
   ],
   "source": [
    "ls */"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.5.1"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 0
}
